Existing ATM (Asynchronous Transfer Mode) services are mainly geared towards native cell-based applications, at least in regard to their Quality of Service (QoS) commitments. In contrast, the Guaranteed Frame Rate service (GFR) is a new proposed Service Category in the ATM Forum, or ATM Transfer Capability (ATC) in ITUT-T, that is a specialize call transport mechanism for packet-based or frame-based applications (e.g., se ITU-T Recommendation I.371 Living List: Perth, Australia, Rapporteur Meeting, 1998). Generally speaking, the GFR service is expected to deliver a minimum bandwidth guarantee to a user with respect to the user's frame traffic that conforms to a set of predefined conditions (also referred to herein as a traffic set, or traffic descriptors). (This minimum bandwidth guarantee, typically expressed in terms of a low cell loss, is also referred to herein as one example of a GFR QoS commitment). The minimum bandwidth guarantee can be determined at subscription time, or negotiated during call setup.
GFR is intended to support non-real time applications. Higher-layer protocol data units (PDUs) or frames, are segmented into one or more user-generated cells prior to their transmission over the standardized network interface. Multiple frames are not expected to straddle a single ATM cell, nor are cells from multiple frames expected to be interleaved unless a suitable de-multiplexing mechanism is provided (e.g., the MID (message identification) field in ATM Adaptation Layer (AAL) 3/4 or a Virtual Path Identifier (VPI)/Virtual Connection Identifier (VCI) fields in other AALs (e.g., see ITU-T Recommendation I.363.3 BISDN ATM Adaptation Layer Specification (AAL 3/4), (1996)). In addition, a mechanism to identify frame boundaries at the ATM layer is required (e.g., the User-to-User Indication (UUI) bit in AAL5). Although, theoretically, a GFR service may be implemented with any AAL providing a frame delineation mechanisms, the initial implementation of the GFR service is geared towards the use of AAL5.
As part of providing the GFR service, a conformance algorithm is used to identify that portion of the user generated traffic that meets the requirements of the above-mentioned traffic set. Illustratively, the traffic set includes a set of parameters such as (but not limited to): peak cell rate (PCR) (instantaneous cell rate); minimum cell rate (MCR) (a maximum number of cells over a period of time, T, to which a QoS commitment applies); maximum burst size (MBS) (which can be interpreted as the maximum number of cells allowed in a data burst at rate PCR); and a maximum frame size (MFS) (a maximum number of cells permitted in a frame). The conformance algorithm evaluates, in real time, a received data stream from a user against the user's predefined traffic set, where the received data stream is partitioned into frames that are further made up of ATM cells. This is shown in FIG. 1. An illustrative received data stream comprises data burst 51, occurring over a time interval T. Each data burst comprises a plurality of cells. The cells are further partitioned into frames 61 and 62 (denoted by the dashed boxes). The conformance algorithm measures the above described PCR, MCR, MBS, and MFS values for this received data stream. For example, assume that the permitted MFS value of the traffic set is equal to 6 (it should be noted that these numbers are used for illustrative purposes only). The conformance algorithm counts each received cell for frame 61. Upon reaching the seventh cell, the conformance algorithm declares frame 61 to be in non-conformance, and, as such, frame 61 does not receive the committed QoS. (It should be noted that frame 61, albeit non-conforming, may still be transmitted by the network.) In the context of frame 61, the first six cells from frame 61 are referred to conforming and the two excess cells 71 are referred to as non-conforming. However, even through frame 61 has been declared non-conforming with respect to the MFS, those six conforming cells from frame 61 are still used in determining conformance to the other traffic set parameters. In particular, the six conforming cells from frame 61 are used to determine whether data burst 51 conforms to the MBS. Illustratively, assume that the MBS is equal to a value of 10 cells. In this instance, data burst 51 is non-conforming since frame 62 comprises six cells, which when added to the six conforming cells from frame 61 exceeds the MBS requirement. As such, frame 62 is also declared as non-conforming notwithstanding the fact that frame 62 meets the MFS requirement. As such, in this conformance technique, cells from a prior non-conforming frame are also applied to the next frame for use in determining if that (future) frame can receive the committed QoS.